﻿* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Julius Sans One', sans-serif;
    background-size: auto 220vh;
    height: 100vh;
    background-color: rgba(206, 205, 185, 0.2);
}

input#control-nav {
    visibility: visible;
}

input#control-nav {
    position: absolute;
    left: -9999px;
    opacity: 0;
}


div {
    display: block;
}

a {
    text-decoration: none;
    color: gray;
}

@media (min-width: 1200px) {
    body {
        font-size: 20px;
    }
}

.menu {
    z-index: 10;
    bottom: 0;
    top: 0;
    position:fixed;
}
.corpo {
    display: grid;
    grid-template-columns: 1.5fr 5fr;
    grid-template-rows: 100%;
    height: 100vh;
    grid-template-areas: 'header main';
}
header {
   
    justify-content: center;
    align-items: center;
    height: 100vh;
    
    grid-area: header;
    z-index: 10;
}
.corpo .menu img {
    height: 260px;
    
    margin-bottom: 15px;
    text-align: center;
    padding: 35px;
    border-radius: 60px;
    text-shadow: 50px 50px 50px rgba(41, 56, 88, 0.5);
    z-index: 10;  
}

.corpo .menu {
    background-color: rgba(41, 56, 88, 0.8);
    justify-content: center;
    align-items: center;
    margin: auto;
    z-index: 10;
    height:100%;
    box-shadow: 5px 10px 15px 8px rgba(41, 56, 88, 0.5)
   
}

.menu a {
    display: block;
    padding: 10px 1px;
    transition: background-color 0.3s, color 0.3s;
    text-decoration: none;
    border-radius: 50px;
    border: 1px rgba(41, 56, 88, 0.5);
    padding: 10px;
    z-index: 10;
    color:#e2e2e2;
    
}

.menu a:hover {
     color: #293858;
     border-radius: 50px;
     transform:scale(1.4);
     text-shadow: 0px 0px 15px rgba(41, 56, 88);
     transform:translateX(20px);
}

.menu li {
    list-style: none;
    text-align: center;
    padding: 20px;
    background-color: rgba(41, 56, 88, 0.8);
    padding-right: 5px;
    padding-bottom: 10px;
    padding-left: 5px;
    z-index: 10;
    position: relative;
   
}

.menu ul {
    justify-content: space-around;
    background-color: rgb(249, 232, 247);
    z-index: 9999;
    box-shadow: 5px 10px 15px 8px rgba(41, 56, 88, 0.5);
    
}
  
.title {
    font-size: 2.8em;
    font-family: 'Bebas Neue', cursive;
    display: block;
    position: relative;
    text-align: center;
    color: rgb(209, 138, 162);
}

h3 {
    color: #e2e2e2;
    margin-top: 5px;
    font-family: 'Cutive Mono', monospace;
    font-size: 10px;
    text-align: center;
    top: 10px;
    padding: 13px;
}

.projetos-text {
    margin-top: 1px;
    font-family: 'Cutive Mono', monospace;
    font-size: 25px;
    padding-left: 1px;
    margin-top: 20px;
    margin-bottom: 5px;
    margin-left: 6px;
    top: 15px;
}

main {
    font-family: 'Cutive Mono', monospace;
    margin-right: 5em;
    grid-area: main;
    position: fixed;
    margin-right: 50px;
}

ul {
    display: block;
    list-style-type: disc;
  
}

main h2 {
    padding: 13px;
    
    font-family: 'Special Elite', cursive;
    
    color: rgba(194, 140, 46, 0.5);
    margin-top: 50px;
    top: 10px;
    margin-left:35px;
}
.img-portfolio {
    height: 160px;
    width: 105%;
    object-fit: cover;
    object-position: left bottom;
    grid-gap: 1em;
    padding: 0px;
    border-radius: 15px;
    margin-top: 15px;
}

.portfolio .grid {
    grid-template-columns: repeat(2,260px);
    /*cada p´x é uma coluna*/
    justify-content: center;
    grid-gap: 5em;
}

@media (min-width: 1200px){
    .img-portfolio {
        height:8.5em;
        
    }
    .portfolio .grid {
        grid-template-columns: repeat(2,290px);
        /*cada p´x é uma coluna*/
        justify-content: center;
        grid-gap: 2em;
    }
    /*em é sempre vezes o tamanho da fonte*/
}
.portfolio {
    display: grid;
    align-content: center;
    justify-content: center;
    text-align: center;
   top:550px;
    margin-left:290px;
}
    .portfolio .grid {
        /*seletor hierárquico - seleciona todos os elementos com a classe grid que estão dentro de um outro elemento que tem a classe portfolio*/
        display: grid; /*forma uma grade, não força coluna, o programador diz a quantidade de linhas para usar*/
        grid-gap: 2.5em; /*define o espaçamento entre cada linha ou coluna do grid. Usa ao invés do margin*/
    }


@media (min-width:2000px) {
    .portfolio .grid {
        grid-template-columns: repeat(4,290px);
        /*cada p´x é uma coluna*/
        justify-content: center;
    }
}

.portfolio figure {
    text-align: center;
    /*recebe herança!*/
    /*  flex- CSS decide grid-programador decide o totald e colunas*/
}

@media screen and (max-width: 595px) {

    header .control-nav {
        position: absolute;
        right: 35px;
        top: 20px;
        display: block;
        width: 30px;
        padding: 5px 0;
        border: solid #333;
        border-width: 3px 0;
        z-index: 2;
        cursor: pointer;
    }

        header .control-nav:before {
            content: "";
            display: block;
            height: 3px;
            background: #333;
        }

    header .control-nav-close {
        position: fixed;
        right: 0;
        top: 0;
        bottom: 0;
        left: 0;
        display: block;
        z-index: 1;
        background: rgba(0,0,0,0.4);
        -webkit-transition: all 500ms ease;
        transition: all 500ms ease;
        -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        transform: translate(100%, 0);
    }

    header nav {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        width: 250px;
        border-left: 1px solid #ccc;
        background: #fff;
        overflow-x: auto;
        z-index: 2;
        -webkit-transition: all 500ms ease;
        transition: all 500ms ease;
        -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        transform: translate(100%, 0);
    }

    #control-nav:checked ~ .control-nav-close {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    #control-nav:checked ~ nav {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    .img-portfolio {
        height: 160px;
        width: 300px;
        object-fit: cover;
        object-position: left bottom;
        grid-gap: 1em;
        padding: 0px;
        border-radius: 15px;
        margin-top: 15px;
        margin-right: 15px;
        margin-left: 15px;
    }

    header {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
        
        grid-area: header;
        z-index: 10;
    }
    .projetos-text {
        margin-top: 1px;
        font-family: 'Cutive Mono', monospace;
        font-size: 18px;
        padding-left: 1px;
        margin-top: 20px;
        margin-bottom: 5px;
        margin-left: 6px;
        top: 15px;
        display:grid;
        text-align: center;
        grid-template-columns: 4.2fr 1.5fr;
        grid-template-rows: 100%;
        justify-content: center;

    }

    .portfolio .grid {
        grid-template-columns: repeat(1,100px);
        /*cada p´x é uma coluna*/
        justify-content: center;
       
    }

}

@media screen and (max-width: 767px) {

    header .control-nav {
        position: absolute;
        right: 35px;
        top: 20px;
        display: block;
        width: 30px;
        padding: 5px 0;
        border: solid #333;
        border-width: 3px 0;
        z-index: 2;
        cursor: pointer;
    }

        header .control-nav:before {
            content: "";
            display: block;
            height: 3px;
            background: #333;
        }

    header .control-nav-close {
        position: fixed;
        right: 0;
        top: 0;
        bottom: 0;
        left: 0;
        display: block;
        z-index: 1;
        background: rgba(0,0,0,0.4);
        -webkit-transition: all 500ms ease;
        transition: all 500ms ease;
        -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        transform: translate(100%, 0);
    }

    header nav {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        width: 250px;
        border-left: 1px solid #ccc;
        background: #fff;
        overflow-x: auto;
        z-index: 2;
        -webkit-transition: all 500ms ease;
        transition: all 500ms ease;
        -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        transform: translate(100%, 0);
    }

    #control-nav:checked ~ .control-nav-close {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    #control-nav:checked ~ nav {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    .img-portfolio {
        height: 160px;
        width: 300px;
        object-fit: cover;
        object-position: left bottom;
        grid-gap: 1em;
        padding: 0px;
        border-radius: 15px;
        margin-top: 15px;
        margin-right: 15px;
        margin-left: 15px;
    }

    header {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
        grid-area: header;
        z-index: 10;
    }
    .portfolio .grid {
        grid-template-columns: repeat(2,260px);
        /*cada p´x é uma coluna*/
        justify-content: center;
        grid-gap: 5em;
    }
    .projetos-text {
        margin-top: 1px;
        font-family: 'Cutive Mono', monospace;
        font-size: 17px;
        padding-left: 1px;
        margin-top: 20px;
        margin-bottom: 5px;
        margin-left: 6px;
        top: 15px;
        text-align: center;
       
        grid-template-columns: 4.2fr 1.5fr;
        grid-template-rows: 100%;
        justify-content: center;
    }
}

@media screen and (min-height: 1000px) {

    header .control-nav {
        position: absolute;
        right: 35px;
        top: 20px;
        display: block;
        width: 30px;
        padding: 5px 0;
        border: solid #333;
        border-width: 3px 0;
        z-index: 2;
        cursor: pointer;
    }

        header .control-nav:before {
            content: "";
            display: block;
            height: 3px;
            background: #333;
        }

    header .control-nav-close {
        position: fixed;
        right: 0;
        top: 0;
        bottom: 0;
        left: 0;
        display: block;
        z-index: 1;
        background: rgba(0,0,0,0.4);
        -webkit-transition: all 500ms ease;
        transition: all 500ms ease;
        -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        transform: translate(100%, 0);
    }

    header nav {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        width: 250px;
        border-left: 1px solid #ccc;
        background: #fff;
        overflow-x: auto;
        z-index: 2;
        -webkit-transition: all 500ms ease;
        transition: all 500ms ease;
        -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
        transform: translate(100%, 0);
    }

    #control-nav:checked ~ .control-nav-close {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    #control-nav:checked ~ nav {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    .img-portfolio {
        height: 160px;
        width: 300px;
        object-fit: cover;
        object-position: left bottom;
        grid-gap: 1em;
        padding: 0px;
        border-radius: 15px;
        margin-top: 15px;
        margin-right: 15px;
        margin-left: 15px;
    }

    header {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
        grid-area: header;
        z-index: 10;
    }
    .portfolio .grid {
        grid-template-columns: repeat(2,260px);
        /*cada p´x é uma coluna*/
        justify-content: center;
        grid-gap: 5em;
    }
    .projetos-text {
        margin-top: 1px;
        font-family: 'Cutive Mono', monospace;
        font-size: 17px;
        padding-left: 1px;
        margin-top: 20px;
        margin-bottom: 5px;
        margin-left: 6px;
        top: 15px;
        text-align: center;
       
        grid-template-columns: 4.2fr 1.5fr;
        grid-template-rows: 100%;
        justify-content: center;
    }
}


    h1 {
        margin-left: -140px;
        padding-top: 60px;
    }

    p {
        margin-left: -140px;
        font-family: 'Source Code Pro', monospace;
    }

    .portfolio {
        align-content: center;
        justify-content: center;
        text-align: center;
        top: 1px;
        margin-left: 1px;
        margin-right: 150px;
    }

    main {
        font-family: 'Cutive Mono', monospace;
        margin-right: 5em;
        grid-area: main;
        position: relative;
        margin-right: 50px;
    }

   

.projetos-text {
    margin-top: 1px;
    font-family: 'Open Sans Condensed', sans-serif;
    font-size: 25px;
    padding-left: 1px;
    margin-top: 20px;
    margin-bottom: 5px;
    margin-left: 6px;
    top: 15px;
    text-align: center;

}



main p {
    text-align: justify;
    font-size: 1.3em;
    color: #747474;
    line-height: 1.5em;
    font-family: 'Open Sans Condensed', sans-serif;
    text-indent: 1.2em;
    margin-right: 10px;
    padding: 6px;
}

figcaption {
    color: #A9A9A9;
    margin-top: 5px;
    font-family: 'Cutive Mono', monospace;
    font-size: 15px;
    text-align: center;
    top: 2px;
}

img :hover {
   
    transform: scale(1.4);
}

.subtitle-site:after {
    content: "|";
    margin-left: 5px;
    opacity: 1;
    animation: pisca .8s infinite;
}

@keyframes pisca {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }
}